Die Klasse hat die Aufgabe eine unbestimmte Anzahl von Strategien, die fuer den Ablauf der Zellsteuerung verwendet werden, zu speichern. Die zu speichernden Strategien ( bzw. Zeiger auf Strategien ) sind vom abstrakten Typ Strategy. Aus den gespeicherten Strategien kann durch eine Methode dieser Klasse gemäß den Anforderungen des Benutzers, eine bestimmte Strategie ausgewählt werden.
class StrategyCollection
{
protected:
Strategy* theStrategyArray[MaxStrategies];short theStrategyCount;public:
StrategyCollection( void ) { theStrategyCount = 0;
}void AppendStrategy( Strategy* aStrategy );Strategy* GetStrategy( GripperType theGripper,short numberOfBuffers,StaggerType staggered,short nStrategyNo = 0 ); // 0 = Bearbeitung
ohne alle tricks};
Die Klasse verfügt über Funktionen zum Hinzufügen von neuen Strategien (AppendStrategy) und Funktionen zur Auswahl von den gespeicherten Strategien (GetStrategy).
Die Lebensdauer der Objekte vom Typ StrategyCollection ist die gesamte Programmlaufzeit.